home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Memphis Amiga Group / MAG DiskMAG Volume 1 Number 4 (1989-01)(Memphis Amiga Group).zip / MAG DiskMAG Volume 1 Number 4 (1989-01)(Memphis Amiga Group).adf / UTILITIES / Virusx31.doc < prev    next >
Text File  |  1988-09-05  |  15KB  |  352 lines

  1.  
  2.                   -VirusX-
  3.  
  4.               by Steve Tibbett
  5.  
  6.  
  7.    - The Complete Virus Removal System! -
  8.  
  9. VirusX - Fourth in a growing line of "X-Utilities".
  10.  
  11. REMEMBER: STUFF NEW TO THE LATEST VERSION IS AT THE _END_ OF THIS
  12. FILE!
  13.  
  14. Version Notes:
  15. --------------
  16. Version Notes are now in the VirusX.C file, as is information on
  17. some of the viruses.
  18.  
  19. Amiga Viruses have been following us around for some time now, and I
  20. think it's about time we got rid of it for good.
  21.  
  22. There are a number of CLI-based Virus Checkers out there, which do their
  23. job just fine, but if you're not into using CLI, what do you do? You use
  24. VirusX!
  25.  
  26. Please, I encourage you to give this program to anybody who might have
  27. the virus.  Including your local dealer - some of the dealers in this
  28. area have the virus all over their disks, which they allow customers to
  29. copy, and they don't do anything about it because they don't know how. 
  30. VirusX makes it extremely simple.
  31.  
  32. You can put VirusX in your Startup-Sequence.  When run, it will open a
  33. small window so you know it's there (and it will display the occasional
  34. message in it).  Whenever a disk is inserted into any of the 3.5"
  35. drives, that disk is automagically checked for the SCA virus, and also
  36. checked to see if it's boot sector is "Standard".  If the disk has a
  37. nonstandard boot sector, it is either a new form of virus which I don't
  38. know about yet, or it is a commercial program which uses the boot block
  39. for  something constructive (like booting their game).
  40.  
  41. If VirusX finds a boot block it is suspicious about, it will present the
  42. user with a requester either warning him that the disk has the SCA virus
  43. (or any other current viruse), or telling him that the boot code is
  44. nonstandard.  In either case, he is given the option to either ignore
  45. it, or to Remove it.
  46.  
  47. If the user selects Remove, after he says he's SURE he wants to
  48. rewrite the disk's boot sector (Remember: Never rewrite the boot
  49. sector of a commercial program unless you KNOW that program doesn't
  50. use it for something else.  If the program gives you the AmigaDOS
  51. window before running, you know it is safe to repair that disk.).  
  52. The boot code written back to the disk by VirusX is the same boot code
  53. that the AmigaDOS INSTALL command (and it's compatible counterpart on
  54. one of the fish disks) uses.  
  55.  
  56. If you click in the little "VirusX" window, and type a number from 0
  57. to 3, (Corresponding to the drive # you would like to look at), VirusX
  58. will resize it's window to fit in the ASCII text of these two blocks,
  59. and allow you to view it.  When you run across a "Nonstandard Boot
  60. Block", you can now check and see if the boot block is some sort of
  61. new Virus (Assuming that the author of the Virus left a string in it)
  62. as you will see something like "Revenge Virus 1.2G" or whatever string
  63. that identifies the virus.  Note that not all viruses have text strings
  64. in them, so don't use this method alone to determine whether an 
  65. unknown boot block is a virus or not.  
  66.  
  67. Also, you can check to see which strain of the SCA virus you have
  68. (VirusX will report "an SCA virus", but will not tell you if it is the
  69. "LSD" virus, or the "Zorro/Willow" virus or whatever new ones may
  70. appear).
  71.  
  72. Generally, if boot code is capable of writing itself back to a different
  73. disk than the one it was loaded from, it is a virus.
  74.  
  75. Keystrokes:  0, 1, 2, 3, will show you the boot block of whatever drive
  76. you select (0 would be DF0:, say), I will show you the Info window.
  77. C will cause VirusX to  re-check all inserted
  78. disks.  To use the keystrokes, click in the main VirusX window and type
  79. away.
  80.  
  81. To move the initial position of the VirusX window, just put two numbers
  82. after the "VirusX" line in your command line.  For instance, to put it
  83. at 50,30, just say VIRUSX 50 30. 
  84.  
  85. If you run across a strain of the virus, or any other virus that VirusX
  86. doesn't specifically warn of, PLEASE send me a copy of a disk with that
  87. virus on it!  I want to keep VirusX current, and to do so, I need the
  88. viruses.
  89.  
  90. Of course, there are those of you who are thinking that I am some nut
  91. case trying to spread my own virus hidden under the guise of a virus
  92. checker.  Well, just for you, I've included the C source code.  Please,
  93. if you don't trust me, don't discard a useful utility as untrustworthy
  94. for no reason, CHECK THE SOURCE!  Recompile it if you think I'm trying
  95. to slip a fast one on you.  I just want to see the virus out of all of
  96. our lives.
  97.  
  98. I want feedback on this!  Send me a letter!  This program is
  99. Copyrighted, but is freely redistributable (It's NOT Shareware).  Do
  100. what you want with it, but  Please don't use it for evil purposes. 
  101. That's what I'm trying to prevent.  (If your conscience is compelling
  102. you to send me something, send me an original game you're bored
  103. with... It won't cost you anything, and it'll keep me busy for a 
  104. few hours (or more...).
  105.  
  106. My address:
  107.  
  108.     Steve Tibbett
  109.     2710 Saratoga Pl. #1108
  110.     Gloucester, Ontario
  111.     K1T 1Z2
  112.  
  113.     My BBS: OMX BBS, 613-731-3419.
  114.  
  115.     I can be reached on BIX as "s.tibbett" and on People/Link
  116.     as "SteveX".  I'm also on Compuserve, but with their dumb
  117.     numbering system, I can never remember who I am.
  118.  
  119.  
  120. ---------------------------------------------------------------
  121.  
  122. BYTE BANDIT VIRUS:
  123.  
  124. What the Byte Bandit virus does is once it's in
  125. memory, it copies itself to just above the high memory
  126. pointer on the first hunk of RAM it can find (Which means
  127. it's not always in the same place), wedges itself into the
  128. Interrupt Server chain, into the Trackdisk.device's vectors,
  129. and creates itself a Resident structure so it can hang
  130. around after reboot.
  131.  
  132. It watches EVERY disk inserted, and will write itself to ANY
  133. bootable disk that is inserted!  This one can spread like
  134. wildfire - every disk you insert into your external drive during
  135. a session with this Virus loaded will result in all those disks
  136. being infected.  Ouch.
  137.  
  138. Also, if you Install a disk while this virus is going, it will  just
  139. copy itself back to the disk - which is why it has to be wiped it from
  140. memory.
  141.  
  142. When VirusX finds this virus on a disk, it will also display a "Copy
  143. Count" which is the number of disks that have been infected by that
  144. "Branch" on the "Tree" that the virus is on -  If you infect a disk with
  145. your copy, and your copy is number 300, then that copy will be #301.  If
  146. he infects somebody,  that will be #302, but on YOUR copy, two
  147. infectations down the line, there will be another #302... Anyways, the
  148. copy count on MY Byte Bandit virus is #879... 
  149.  
  150. Note that VirusX will check RAM for this virus as well as the disk. 
  151. This was necessary as you can tell from the description above.
  152.  
  153. Special thanks must go here to Dave Hewett, who, 2 days after I gave him
  154. a copy of the virus, gave me a printed, commented disassembly of the
  155. virus with meaningful labels and everything I needed to stomp it -
  156. Thanks Dave!
  157.  
  158. Thanks must also go to Bruce Dawson of CygnusSoft Software, who went to
  159. the trouble of being the First person to send me this Virus.  (As of
  160. yet, he's also the ONLY person - Geez, folks, I need YOUR help to do
  161. this too, eh?)
  162.  
  163.  
  164. REVENGE VIRUS:
  165.  
  166. What this virus does, is everything that the Byte Bandit virus does,
  167. PLUS, after infecting a disk, it will wait one  minute after every
  168. reboot, and change your mouse pointer  into an image of a certain part
  169. of the Male anatomy. 8-)
  170.  
  171. I think the reason this virus is called the "Revenge" virus is because
  172. it looks specifically for the Byte Bandit and for the SCA Virus.  If
  173. it finds either of these, it Rigs THAT virus so that it will CRASH the
  174. machine unless THIS virus is loaded first.  Note that I might be wrong
  175. about this - that's the way it looks from the disassembly, but I don't
  176. have an SCA virus here to  test it with.   I tried it with the Byte
  177. Bandit, and it didn't seem to do anything like this - but be warned,
  178. in case it pops up later or something.
  179.  
  180. He stays in RAM via changing the CoolCapture vector to point to his
  181. own code.  He then intercepts the DoIO() call and watches for any
  182. attempts to rewrite or to read the boot block and acts accordingly. 
  183. He also has an interrupt around counting VBlanks until it's time to
  184. bring up his sicko pointer.
  185.  
  186. To get this virus out of memory is Simple - Hold down the Joystick
  187. button (Plug a joystick into port 2, and hold down the button while
  188. you are rebooting), and the screen will briefly turn RED during the
  189. boot, and it's out of memory. (If you hold down Joystick button AND
  190. mouse button, it will half-remove himself from RAM and turn the screen
  191. Blue)
  192.  
  193. VirusX will alert you if the virus is present in RAM and will render
  194. it helpless in RAM before telling you about  it.  It will also report
  195. it's presence on disk.  
  196.  
  197. I'd like to thank Lars Wilkund for being the first (And only so far)
  198. person to send me this virus on disk.  Lasse is part of a Swedish users
  199. group with over 700 members!
  200.  
  201. BYTE WARRIOR VIRUS:
  202.  
  203. The Byte Warrior Virus is a lot like the Byte Bandit virus, except
  204. it is not designed to hurt anything - it will start an "Alarm"
  205. sound if it sees another virus (or at least I think it does - 
  206. it hasn't for me), but other than that, it will write itself to
  207. any disk inserted.  There is also a hidden message in it, asking us
  208. to spread it around and not to erase it.  Ya, right.
  209.  
  210.  
  211. NORTH STAR VIRUS:
  212.  
  213. It's a virus itself that alerts you to other ones - 
  214. I think this sort of idea is stupid because it can do just as 
  215. much damage as the rest of them.
  216.  
  217. One new virus showed up for this version, the "Obelisk Softworks
  218. Crew" virus.  It was sent to me by Jason Allen Smith.  Thanks, 
  219. Jason!
  220.  
  221. Other changes this version - it's now a bunch smaller (again!) thanks
  222. to a bit of a rewrite in assembler, and some reorganization.
  223.  
  224.  
  225. SCA Virus:
  226.  
  227. This is the original.  It just sits in RAM writing itself to any
  228. disk you boot off of.  You can get it out of memory by either running
  229. VirusX, or holding down the left mouse button while you reboot
  230. the machine (The machine will flash the screen green once it's
  231. truly gone).
  232.  
  233. -------------------------------------------------------------------
  234.  
  235. The IRQ Virus:
  236. --------------
  237.  
  238. The IRQ Virus is the latest Amiga Virus (that I've seen anyway).  This
  239. one stands out from the crowd, in that it is NOT found in the boot
  240. block.
  241.  
  242. This Virus attaches itself to executable programs.  It's prime target
  243. is the C:DIR command, but it will also look at your startup sequence
  244. and attach itself to the first executable program found in the startup
  245. sequence.
  246.  
  247. A sample chain of events:
  248.  
  249.    - You download or otherwise acquire a new program.  This program
  250.      happens to be infected.
  251.    - You execute this program.
  252.    - The Virus then attaches itself to memory (by taking over the
  253.      OldOpenLibrary() vector), and adds a KickTagPtr (for no apparent
  254.      reason).
  255.    - Now, you're on DF0: and you run a program that uses the 
  256.      OldOpenLibrary() vector (hard to predict which ones do...),
  257.      the Virus will open your startup sequence and picks the first
  258.      filename it sees in it, see if it's executable, and if so, it 
  259.      will write itself into that file.  IF it's not executable, it
  260.      will try and write to the DIR command on that disk.
  261.  
  262. As you can see, the only files this virus will infect, will be whatever
  263. comes first in your startup sequence, and the DIR command.  The only way
  264. this Virus could possibly spread via modem is through deliberate sabotage,
  265. (unless the guy actually DID have the program as the first thing in his
  266. startup sequence before sending it to you).
  267.  
  268.  
  269. WHAT IT DOES
  270.  
  271. This Virus is mostly a harmless joke.  It will not kill commercial programs
  272. (at least not any I've seen so far), it doesn't attack anything,
  273. doesn't do anything malicious.  It's not nice to have around, but it's
  274. certainly better than a malicious virus!
  275.  
  276. It changes the title bar of the Initial CLI window when you boot, and it
  277. will try to write to any disk inserted - thus bringing up the "Volume
  278. whatever is write protected" requester whenever you insert a write
  279. protected disk.  
  280.  
  281. It will write itself to any disk you execute a file off of, possibly to the 
  282. DIR command, possibly to the first thing in the startup sequence, 
  283. depending on the startup sequence.
  284.  
  285. This virus will not work under Kickstart 1.3 - you will get Software
  286. Error requesters whenever you run an infected program.  I'm not sure
  287. why, but this is probably good.
  288.  
  289.  
  290. HOW TO KNOW IF YOU HAVE THIS VIRUS
  291.  
  292. You cannot identify a file that has this virus in it just by looking at it.
  293. The virus encrypts the text parts of itself, and encrypts it differently on
  294. each copy - so you can't learn to recognize it.  
  295.  
  296. You can tell your system is infected if you put in a write protected
  297. workbench disk (or any disk that has a startup sequence), and if the system
  298. brings up a "Volume whatever is write protected" requester, then this virus
  299. is in RAM attempting to infect this disk.
  300.  
  301. Running VirusX 3.1 will tell you that this virus is in RAM, and VirusX will
  302. remove it from RAM.
  303.  
  304. The other thing this Virus does is, when it first installs itself in your
  305. system upon reboot, it changes the title bar of the current window,
  306. (usually the initial CLI window, since it IS the first thing in your startup
  307. sequence), to say something like "AmigaDOS Presents:  The IRQ Virus,
  308. V41.0".  This is of course a dead giveaway.
  309.  
  310.  
  311. HOW TO GET RID OF THIS VIRUS
  312.  
  313. To get the virus out of RAM, run VirusX 3.1 and it will tell you if it
  314. found it and that it removed it if it did.  VirusX will check disks the
  315. same way that the Virus does - it will look at the startup sequence,
  316. determine if the first file found (or the DIR command) are infected, and
  317. give you the option of repairing them if they are infected.  
  318.  
  319. You can also get rid of this virus simply by deleting all infected programs
  320. and rebooting.  This virus will not hang around after a reboot.
  321.  
  322. Because this virus can hit a number of files, not all of which VirusX will
  323. find, also included is a small program by Dan James called KV, "KillVirus".
  324. This program will check a whole directory's worth of files for this
  325. specific virus.  
  326.  
  327. VirusX 3.0 will look in the same places the Virus does for possibly
  328. infected programs.  If it finds one, it will pop up a window and show
  329. you where it found it, and ask if it's OK to remove it.
  330.  
  331.  
  332. HOW TO MAKE SURE YOU DON'T GET THIS VIRUS
  333.  
  334. Keep VirusX 3.1 running when you test new programs.  VirusX will alert you
  335. as soon as it sees this virus appear in memory - probably the last program
  336. you ran is infected if VirusX reports it found the virus.
  337.  
  338. ===========================================================================
  339.  
  340. I'd like to thank Lasse Wilklund, Jason Allen Smith, Bruce Dawson,
  341. Robb Walton (sorry, Rob, I can't remember how your last name goes,
  342. I think that's it), Pete Foley, and all the others who have sent me disks
  343. whom I cannot remember.  Sorry I don't answer mail as quickly or
  344. as often as I'd like, I have very little time these days.
  345. Mucho thanks also to Dan James, who's been helping me all along,
  346. and who did a lot of the finding out about the IRQ Virus.
  347.  
  348. There are MORE viruses out there!  Please, send them to me!
  349.  
  350.     ...Steve
  351.  
  352.